


use ppi
/*
-- // checksum failed custom error
exec sp_addmessage @msgnum = 505050, @severity = 16, @msgtext = N'%s(%s) checksum compare failed', @replace = 'REPLACE', @lang = 'us_english'
GO

-- // not found custom error
exec sp_addmessage @msgnum = 505060, @severity = 16, @msgtext = N'%s(%s) does not exist', @replace = 'REPLACE', @lang = 'us_english'
GO

-- // unit test custom error
exec sp_addmessage @msgnum = 505070, @severity = 16, @msgtext = N'%s Test Failed. Expected< %s > Actual< %s > %s', @replace = 'REPLACE', @lang = 'us_english'
GO

*/

use ppi

if exists (select * from dbo.sysobjects where id = object_id(N'v_tb_Vendor_Distribution_RecloserImages') and OBJECTPROPERTY(id, N'IsProcedure') = 0)
drop view v_tb_Vendor_Distribution_RecloserImages
GO

create view v_tb_Vendor_Distribution_RecloserImages as
	/* 	Initial Generated Date:  viernes, 03 de septiembre de 2010 
		Purpose: Selected record(s) from the table; this view is the source for all procedures' select statements
	*/
	
select
	 [Vendor_Distribution_Recloser_ImageId] as [Vendor_Distribution_Recloser_ImageId]
	,[Vendor_Distribution_RecloserFk] as [Vendor_Distribution_RecloserFk]
	,[FileName] as [FileName]
	-- customization may be required for FriendlyName
	,Left(CONVERT(varchar(255), [FileName]), 255) as [FriendlyName]
from
	tb_Vendor_Distribution_RecloserImages
GO





use ppi

if exists (select * from dbo.sysobjects where id = object_id(N'up_VendorDistributionRecloserImage_Test') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure up_VendorDistributionRecloserImage_Test
GO


create proc up_VendorDistributionRecloserImage_Test
	@Vendor_Distribution_Recloser_ImageId int
as
	/* 	Initial Generated Date:  viernes, 03 de septiembre de 2010 
		Purpose: Test if a record exists, using the primary key
	*/

SET NOCOUNT ON	
	
if exists(
	select [Vendor_Distribution_Recloser_ImageId] 
	from [tb_Vendor_Distribution_RecloserImages] source
	where [source].[Vendor_Distribution_Recloser_ImageId] = @Vendor_Distribution_Recloser_ImageId)
begin
	return(1)
end
else
begin
	return(0)
end
GO






use ppi

if exists (select * from dbo.sysobjects where id = object_id(N'up_VendorDistributionRecloserImage_Select') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure up_VendorDistributionRecloserImage_Select
GO

create proc up_VendorDistributionRecloserImage_Select
	 @Vendor_Distribution_Recloser_ImageId int = null 
	,@Vendor_Distribution_RecloserFk int = null 
	,@FileName nvarchar(100) = null 
as
	/* 	Initial Generated Date:  viernes, 03 de septiembre de 2010 
		Purpose: Selected record(s) based on the passed arguments; no arguments returns all
	*/

SET NOCOUNT ON	

select * from v_tb_Vendor_Distribution_RecloserImages
where
		IsNull([v_tb_Vendor_Distribution_RecloserImages].[Vendor_Distribution_Recloser_ImageId], -1) = Coalesce(@Vendor_Distribution_Recloser_ImageId, [v_tb_Vendor_Distribution_RecloserImages].[Vendor_Distribution_Recloser_ImageId], -1)
	AND	IsNull([v_tb_Vendor_Distribution_RecloserImages].[Vendor_Distribution_RecloserFk], -1) = Coalesce(@Vendor_Distribution_RecloserFk, [v_tb_Vendor_Distribution_RecloserImages].[Vendor_Distribution_RecloserFk], -1)
	AND	IsNull([v_tb_Vendor_Distribution_RecloserImages].[FileName], '') = Coalesce(@FileName, [v_tb_Vendor_Distribution_RecloserImages].[FileName], '')
GO





use ppi

if exists (select * from dbo.sysobjects where id = object_id(N'up_VendorDistributionRecloserImage_Select_Top1') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure up_VendorDistributionRecloserImage_Select_Top1
GO

create proc up_VendorDistributionRecloserImage_Select_Top1
	 @Vendor_Distribution_Recloser_ImageId int = null 
	,@Vendor_Distribution_RecloserFk int = null 
	,@FileName nvarchar(100) = null 
as
	/* 	Initial Generated Date:  viernes, 03 de septiembre de 2010 
		Purpose: Selected top 1 record based on the passed arguments; no arguments returns all
	*/

SET NOCOUNT ON	

select TOP 1 * from v_tb_Vendor_Distribution_RecloserImages
where
		IsNull([v_tb_Vendor_Distribution_RecloserImages].[Vendor_Distribution_Recloser_ImageId], -1) = Coalesce(@Vendor_Distribution_Recloser_ImageId, [v_tb_Vendor_Distribution_RecloserImages].[Vendor_Distribution_Recloser_ImageId], -1)
	AND	IsNull([v_tb_Vendor_Distribution_RecloserImages].[Vendor_Distribution_RecloserFk], -1) = Coalesce(@Vendor_Distribution_RecloserFk, [v_tb_Vendor_Distribution_RecloserImages].[Vendor_Distribution_RecloserFk], -1)
	AND	IsNull([v_tb_Vendor_Distribution_RecloserImages].[FileName], '') = Coalesce(@FileName, [v_tb_Vendor_Distribution_RecloserImages].[FileName], '')
GO




use ppi

if exists (select * from dbo.sysobjects where id = object_id(N'up_VendorDistributionRecloserImage_Insert') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure up_VendorDistributionRecloserImage_Insert
GO

create proc up_VendorDistributionRecloserImage_Insert
	 @Vendor_Distribution_Recloser_ImageId int =null OUTPUT  
	,@Vendor_Distribution_RecloserFk int  
	,@FileName nvarchar(100)  
as
	/* 	Initial Generated Date:  viernes, 03 de septiembre de 2010 
		Purpose: Inserts a new record; missing arguments are set as their default (typically null)
	*/

SET NOCOUNT ON	
--int

insert tb_Vendor_Distribution_RecloserImages 
	(
	
	 [Vendor_Distribution_RecloserFk] 
	,[FileName] 
	)
	values
	(
	
	 @Vendor_Distribution_RecloserFk 
	,@FileName 
	)
set @Vendor_Distribution_Recloser_ImageId = scope_identity()
select * from v_tb_Vendor_Distribution_RecloserImages where Vendor_Distribution_Recloser_ImageId = @Vendor_Distribution_Recloser_ImageId

GO




use ppi

if exists (select * from dbo.sysobjects where id = object_id(N'up_VendorDistributionRecloserImage_Update') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure up_VendorDistributionRecloserImage_Update
GO


create proc up_VendorDistributionRecloserImage_Update
	 @Vendor_Distribution_Recloser_ImageId int  
	,@Vendor_Distribution_RecloserFk int = null  
	,@FileName nvarchar(100) = null  
	,@OriginalVendor_Distribution_Recloser_ImageId int  = null --Original PrimaryKey
	
as
	/* 	Initial Generated Date:  viernes, 03 de septiembre de 2010 
		Purpose: Updates an existing record, verifying exist; missing arguments persist original record value
		NOTE: this version of the update allows up to write nulls to the table.
	*/

SET NOCOUNT ON	

if @OriginalVendor_Distribution_Recloser_ImageId is null
	set @OriginalVendor_Distribution_Recloser_ImageId = @Vendor_Distribution_Recloser_ImageId

-- test
declare @Result bit
execute @Result = up_VendorDistributionRecloserImage_Test @OriginalVendor_Distribution_Recloser_ImageId
if (not @Result = 1)
begin
	Declare @x varchar(100)
	Set @x = Convert(Varchar(100), @Vendor_Distribution_Recloser_ImageId)
	raiserror(505060, 16, 1, 'VendorDistributionRecloserImage', @x)
	return
end

-- proceed
update tb_Vendor_Distribution_RecloserImages 
set

	 [Vendor_Distribution_RecloserFk] = IsNull(@Vendor_Distribution_RecloserFk, [source].[Vendor_Distribution_RecloserFk])
	,[FileName] = IsNull(@FileName, [source].[FileName])
	
from tb_Vendor_Distribution_RecloserImages source
where
	[source].[Vendor_Distribution_Recloser_ImageId] = @OriginalVendor_Distribution_Recloser_ImageId


select * from v_tb_Vendor_Distribution_RecloserImages where Vendor_Distribution_Recloser_ImageId = @Vendor_Distribution_Recloser_ImageId
GO





use ppi

if exists (select * from dbo.sysobjects where id = object_id(N'up_VendorDistributionRecloserImage_Delete') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure up_VendorDistributionRecloserImage_Delete
GO


create proc up_VendorDistributionRecloserImage_Delete
	@Vendor_Distribution_Recloser_ImageId int
as
	/* 	Initial Generated Date:  viernes, 03 de septiembre de 2010 
		Purpose: Deletes an existing record, verifying exist
	*/

SET NOCOUNT ON	

-- test
declare @Result bit
execute @Result = up_VendorDistributionRecloserImage_Test @Vendor_Distribution_Recloser_ImageId
if (not @Result = 1)
begin
	Declare @x varchar(100)
	Set @x = Convert(Varchar(100), @Vendor_Distribution_Recloser_ImageId)
	raiserror(505060, 16, 1, 'VendorDistributionRecloserImage', @x)
	return
end

-- proceed
delete from tb_Vendor_Distribution_RecloserImages 
where [Vendor_Distribution_Recloser_ImageId] = @Vendor_Distribution_Recloser_ImageId

GO


